********************************************************************************
                        | LES INSTRUCTIONS ASSEMBLEUR |
                        |              PAR            |
 			|          ALLIGATOR427	      |   09/96
*********************************************************************************

AAA	ajustement ascii de <AL> apres une addition. Format BCD
AAD	ajustement ascii de <AX> avant une division BCD
AAM	ajustement ascii de <AL> apres une multiplication. Format BCD
AAS	ajustement ascii de <AL> apres une soustraction.
ADC	addition avec retenue <CF>
ADD	addition sans retenue
AND	operation logique ET
ARPL	ajuste le niveau du privilege (mode protge)
BOUND	teste un nombre par rapport a des limites
BSF	cherche 1 bit de droite a gauche
BSR	"  "   "   "  "  gauche a droite
BSWAP	conversion d'un registre en un format INTEL
BT	charge 1 bit en CF
BTC	" "  "   "   "  "  et complement
BTR	" " " " "  " " " " puis le met a 0 dans la source
BTS	" " " " " " " " " " " " " " " " "1 " " " " "" "  "
CALL	appel de sous programme
CBW	convertit l'octet sign de <AL> en un mot dans <AX>
CDQ	convertit le mot sign de EAX en un quadruple mot dans <EDX:EAX>
CLC	mets l'indicateur a 0 dans CF
CLD	" " " " "  " " " " " " " " DF
CLI	" " " " " " " " "  " " " " IF
CLTS	mets a 0 l'indicateur de changement de contexte Task-Switch-Flag
	mode protge.
CMC	complemente l'indicateur CF
CMP	comparaison logique
CMPS[b][w] compare des chaines de caracteres
CMPSD	compare des chaines de caractere 80386()
CMPXCHG	compare l'accumulateur avec AL, AX, ou EAX
CWD	convertit le contenu signe de AX en un double mots DX:AX
CWDE	"  " " " " "" " "" " " " " " " " "" " " " " " " "  dans EAX
DAA	ajustement decimal de AL apres une addition BCD
DAS	"  " " " " " " " " " " " " " " " " soustraction BCD
DEC	decrementation 
DIV	division non signee
ENTER	construit un cadre de pile pour une procedure de haut niveau.
ESC	acces pour le coprocesseur
HLT	arret du processeur en attente d'un evenement externe
IBTS 	insere une chaine de bits (mode protegee)
IDIV	division signe
IMUL	multiplication signe
IN	lit un octet ou mot sur un port peripherique
INC	incrementation
INS[b][w] lit une chaine sur un port
INT 	interruption logiciel
INTO	active l'interruption 4 si l'indicateur OF est arm
INBD	efface le contenu de la mem cache du 486
INVLPG	exploitation du 486 en mode virtuel. multiprocesseur 8088
IRET	retour d'interruption
IRETD	" " " " " " " " " "" depuis un segment de 32bits
JA	branchement si superieur
JAE	 "" "  " " "" "  " ""  " ou egal
JB	branchement si inferieur
JBE	" " " " " " " " " " " " " ou egal
JC	branchement si CF est a 1
JNC	 " " " " ""  " ""  " "" 0
JCXZ	 " " " " " " " CX " " " " 
JECXZ	branchement si le registre ECX est a 0
JE	branchement en cas d'egalit
JG	branchement si arithmetiquement superieur ou egale
JMP	branchement a l'adresse indique
JNA	branchement si non superieur
JNAE	branchement si non superieur ou egal
JNB	branchement si non inferieur
JNBE	 "" " " " "" "  " " "" " " " ou egal
JNE	branchement en cas de non egalit
JNG	branchement si arithmetiquement non superieur
JNGE	 " " " " "" " " "" " " "  " ""  " " ""  "" " ou egal
JNL	branchement si non inferieur arithmetiquement
JNLE	branchaement si arithmetiquement non inferieur ou egale
JNO	branchement si l'indicateur OF est a 0
JNP	branchement si parit impaire (indicateur PF a 0)
JNS	branchement si positif
JNZ	branchement si different
JO	branchement si OF est a 1
JP	branchement si parit pair. indicateur PF est a 1
JPE	" " " " " " " " " " " " " " " " " " " " " " " " " 
JPO	" " " "" " " " " "  " "impair. " " " " " "" " " 0
JS	branchement si negatif
JZ	branchement en cas d'egalit
LAHF	charge en AH la partie basse du registre des indicateurs
LAR	charge le drout d'acces (mode protege)
LDS	charge une adresse physique en DS: registre
LEA 	" " " " " " "" "  "effective
LEAVE	libere le cadre de pile, installer par entre
LES	charge une adresse physique en ES: registre
LFS	" " " "" "  "" " "  " "" " " " FS: " '" "
LGDT	charge le registre de la table des descripteurs globaux (mode protge)
LGS	charge une adresse physique en GS: registre
LIDT	charge le registre de la table des descripteurs d'interruption (MODE P)
LLDT	charge le registre de la table des descripteurs locaux
LMSW	" " "  le mot d'etat de la machine (mode protge)
LOCK	verrouille le bus
LODS[b][w] charge AL/AX avec le contenu de DS:SI
LODSD	charge EAX avec le contenu de DS:SI
LOOP	branchament tant que CX #0
LOOPE	" " " "" " "  " ""  " " " "et ZF =1
LOOPNZ	" "  " " " " ""  "" "  " "" "  ""=0
LOOPZ	" " " " " " " "  " " ""  "" " "  =1
LSL	charge une limite de segment (mode protege)
LSS	charge une adresse physique en SS: registre
LTR	charge le registre de tache (mode protge)
MOV	tranfere une donne
MOVS	transfere une chaine de caractere octet par octet ou mot pour mot de 
	DS:SI en ES:DI
MOVSD	transfere une chaine de caracteres double mot par double mot
MOVSX	tranfert avec extension de signe
MOVZX	tranfert avec une extension de 0
MUL	multiplication non signe
NEG 	negation par complement de 2
NOP	pas d'operation, voir utilisation de samsom pour ex:
NOT	operation logique NON complement a 1
OR	operation logique OU inclusif
OUT	transmets un octet ou mot a un periph
OUTS[b][w] transmets une chaine a un port
OUTSD	transmets un double mot a un port
POP	depile un mot
POPA	depile les registres
POPAD	depile tous les registres 32 bits
POPF	depile un mot et le tranfere vers le registre des indicateurs
POPFD	 " """ " DOUBLE MOT "" " " " " "" " " "" " " " " "" " " "  "" "  "" "  
	sur 32bits
PUSH:	empile une valeur
PUSHA	empile tous les registres
PUSHAD	" " " " " ""  " " ""  "" 32 bits
PUSHF	empile le registre des indicateurs
PUSHFD	empile le registre des indicateurs a 32bits
RCL	rotation a gauche a travers CF
RCR	rotation a droite a travers CF
REP[z][nz] prefixes de repetition
REP[e][ne] pour traiter les chaines de caractere en association  avec CX et 
	les indicateurs
RET[n][f] retour de sous programme
ROL	rotation a gauche
ROR	rotation a droite
SAHF	copie AH dans la partie basse du registre des indicateurs.
SAL	decalage a gauche avec introduction de 0
SAR	" " " "  " droite avec signe
SBB	soustraction non signe avec prise en compte de CF
SCAS[b][w] compare une chaine octet par octet ou mot par mot avec le contenu de 
	AL/AX
SCASD	compare une chaine double mot par double mot avec le contenu EAX
SETA	initialisation a 1 si CF et ZF sont a 0, sinon initialisation a 0
SETAE	" " " " " " " " " "  "" est a 0, sinon init. a 0
SETB	" " " " " " " " " " " " " " " 1, " " " " " " " " 
SETBE	"  " " " " " " " " " " CF ou ZF est a 1, sinon initialisation a 0
SETE	" " " " " " " " " " "  ZF est a 1, sinon init. a 0
SETG	" " " " " " " " " " " " " " " " 0 et SF=OF, sinon init. a 0
SETGE	 " " " " " " " " " " " SF=OF, sinon init. a 0
SETL	" " " " " " " " " " "  SF#OF, sinon init. a 0
SETLE	" " " " " " " " " " "  ZF est a 1 et SF#OF, sino init a 0
SETNA	" " " " " " " " " " "  CF ou ZF est a 1, init a 0
SETNAE	" " " " " " " " " " "  CF est a 1, sinon init. a 0
SETNB	" " ""  " " ""  ""  "" CF est a 0, sinon init a 0
SETNBE	" " " " " " " ""  " " "CF et ZF sont a 0, sinon, init. a 0
SETNE	" " " " " " " " " " "  ZF est a 0, sino init a 0
SETNG	" " " " " " " " " " " " " " " " 1 ou SF#OF, sinon init. a 0
SETNGE	" " " " " " ""  " " " "SF#OF, sinon init. a 0
SETNL	" " " " " " " " " " " "SF et OF sont egaux, sinon init. a 0
SETNLE	" " " " " " " " " " " "ZF est a 0 et SF=OF, sinon init a 0
SETNO	" " " " " " " " " " "  OF est a 0, sinon init a 0
SETNP   " " " " " " " " " " " "PF est a 0, " " " "" " " " 
SETNS	" " " " " " ""  " "" " SF " " " " " " "" " " " "" 
SETNZ	" " "" " " " "" " " " "ZF " " " ""  " "" " "  " "
SETO	" " " " " " " " ""  "  OF est a 1, "" " "" " " "" 
SETP	" " " " " " " " " " "  PF  " " " " " " " " " "" " 
SETPE	" " " " "" " " " " " "  " " " " " " ""  "" "  "" " 
SETPO	" " " " " " " " " " " " " " " " 0, " " " " " " "" "
SETS	" " " " " " " " " " " " SF est a 1, sinon " " " " " 
SETZ	" " " " " " " " "" " "  ZF " " " " " " " " ""  ""  "
SGDT	sauvegarde le registre de la table des descripteurs globaux(mode prot.)
SHL	voir SAL
SHLD	decalage double a gauche
SHR	decalage a droite avec introduction de 0
SHRD	decalage double a droite
SIDT	sauvegarde le registre de la table des interruptions. (mode protge)
SLDT	" " " " " " " " " " " " " " " " " " "" descripteurs locaux (mode P)
SMSW	sauvegarde le mot d'etat de la machine (mode P)
STC	mets a 1 l'indicateur CF
STD	" " " " ""  ""  " " " DF
STI	" " " " "  " " "" "  "IF
STIOS[b][w] transfert octet par octet, mot par mot le contenu de AL en ES:DI
STOSD	transfert double mot par double mot le contenu de EAX en ES:DI
STR	sauvegarde le registre de tache (mode Protge)
SUB	soustraction non signe
TEST	test si un bit est a 1
VERR	test l'autorisation de lecture d'un segment (mode protge)
VERW	test l'autorisation d'ecriture dans un segment (mode protge)
XADD	addition signe
WAIT	attends que la ligne BUSY ne soit plus actif
XBINVD	efface le contenu de la memoire cache du 486
XBTS	prends une chaine de bits (mode protge)
XCHG 	echange les contenus de 2 registres
XLAT	charge en AL l'octet de la table DS:BX+AL
XOR	operation logique ou exclusive
